package com.itboye.sunsun.shop.ui.fragment;

import java.util.ArrayList;
import java.util.List;

import com.itboye.sunsun.R;
import com.itboye.sunsun.beans.GoodsDetailBean;
import com.itboye.sunsun.beans.GoodsDetailBean.SkuBean;
import com.itboye.sunsun.beans.GoodsDetailBean.SkuCombinationBean;
import com.itboye.sunsun.buy.ui.QueRenDingDan;
import com.itboye.sunsun.constants.NetPublicConstant;
import com.itboye.sunsun.constants.SPContants;
import com.itboye.sunsun.custome.FlowLayout;
import com.itboye.sunsun.custome.XScrollView;
import com.itboye.sunsun.network.HttpRequest;
import com.itboye.sunsun.support.BaseDialogFragment;
import com.itboye.sunsun.utils.DebugToast;
import com.itboye.sunsun.utils.DensityUtil;
import com.itboye.sunsun.utils.IntegerParse;
import com.itboye.sunsun.utils.SPUtils;
import com.itboye.sunsun.utils.XImageLoader;
import com.itboye.sunsun.volley.MyJsonRequest;
import com.itboye.sunsun.volley.XErrorListener;
import com.itboye.sunsun.volley.XRequestListener;
import com.nineoldandroids.animation.Animator;
import com.nineoldandroids.animation.Animator.AnimatorListener;
import com.nineoldandroids.animation.ObjectAnimator;
import com.pobing.uilibs.extend.component.dialog.ImageViewerDialog;

import android.animation.AnimatorListenerAdapter;
import android.annotation.SuppressLint;
import android.content.Intent;
import android.graphics.Color;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.view.ViewGroup.LayoutParams;
import android.view.ViewTreeObserver.OnGlobalLayoutListener;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;

public class JiaRuGouWuCheDialog extends BaseDialogFragment {

	View close;
	ImageView pic;
	TextView jiege;
	TextView kucun;
	ViewGroup guigeContainer;
	View ok;
	GoodsDetailBean goodsDetailBeans;

	View jian;
	View jia;
	EditText input;
	boolean isLiJIGouMai;
	ViewGroup container;
	String imgUrl;
	protected String uid;
	protected String pskuId;
	protected String pid;

	public JiaRuGouWuCheDialog() {

	}

	public JiaRuGouWuCheDialog(GoodsDetailBean goodsDetailBeans,
			boolean isLiJIGouMai) {

		this.goodsDetailBeans = goodsDetailBeans;
		this.isLiJIGouMai = isLiJIGouMai;
	}

	@Override
	public View onCreateView(LayoutInflater inflater, ViewGroup container,
			Bundle savedInstanceState) {

		return LayoutInflater.from(getContext()).inflate(
				R.layout.dialogfragment_jiarugouwuche, null);
	}

	@Override
	public void onActivityCreated(Bundle savedInstanceState) {

		super.onActivityCreated(savedInstanceState);

		if (savedInstanceState != null) {
			goodsDetailBeans = (GoodsDetailBean) savedInstanceState
					.getSerializable("goodsDetailBeans");
			isLiJIGouMai = savedInstanceState.getBoolean("isLiJIGouMai");
		}
		imgUrl = goodsDetailBeans.getMainImg();
		XImageLoader.load(goodsDetailBeans.getMainImg(), pic);
		jiege.setText("￥" + goodsDetailBeans.getMinPrice());

		int hasSuk = goodsDetailBeans.getHasSku();
		if (hasSuk == 1) {
			addGuiGe();
		} else {
			((View) kucun.getParent()).setVisibility(View.VISIBLE);
			kucun.setText(goodsDetailBeans.getSkuInfo().getQuantity() + "");
		}

		jia.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {
				String s = input.getText().toString();
				try {
					int c = Integer.parseInt(s);
					input.setText(c + 1 + "");
				} catch (NumberFormatException e) {
					input.setText("1");
				}
				input.setSelection(input.getText().length());
			}
		});

		jian.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {
				String s = input.getText().toString();
				try {
					int c = Integer.parseInt(s);
					if (c > 0) {
						c--;
					}
					input.setText(c + "");
				} catch (NumberFormatException e) {
					input.setText("0");
				}
				input.setSelection(input.getText().length());
			}
		});

		close.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {
				close();
			}
		});
		ok.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {
				if (isLiJIGouMai) {
					
				}
				String s = checkGuiGeSelectedState();
				if (s == null) {
					return;
				}

				if (IntegerParse.parse(kucun.getText().toString(), 0) < IntegerParse
						.parse(input.getText().toString(), 0)) {
					Toast.makeText(getContext(), "库存不足", 1).show();
					return;
				}

				int hasSuk = goodsDetailBeans.getHasSku();
				if (hasSuk == 1) {
					List<SkuCombinationBean> list = goodsDetailBeans
							.getSkuList();
					for (SkuCombinationBean skuCombinationBean : list) {
						if (skuCombinationBean.getSkuId().equals(s)) {
							pskuId = skuCombinationBean.getId();
							break;
						}
					}
				} else {
					pskuId = goodsDetailBeans.getSkuInfo().getId();
				}
				ok.setEnabled(false);
				 uid = (String) SPUtils.get(getContext(), null,
						SPContants.USER_ID, "");
				 pid = pskuId;
				MyJsonRequest<String> request = new MyJsonRequest.Builder<String>()
						.apiVer("100").typeKey("BY_ShoppingCart_add")
						.param("uid", uid)
						.param("p_id", goodsDetailBeans.getId())
						.param("count", input.getText().toString())
						.param("psku_id", pskuId)
						.requestListener(new XRequestListener<String>() {
							@Override
							public void onResponse(String arg0) {
								ok.setEnabled(true);
								if (isLiJIGouMai) {
									updateShopCartNum(arg0);
								} else {
									close();
								}
							}

							
						}).errorListener(new XErrorListener() {
							@Override
							public void onErrorResponse(Exception exception,
									int code, String msg) {
								ok.setEnabled(true);
								Toast.makeText(getContext(), "添加失败1", 1).show();

							}
						}).build();
				HttpRequest.getDefaultRequestQueue().add(request);

			}
		});

		pic.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {
				if (imgUrl != null) {
					ImageViewerDialog imageViewerDialog = new ImageViewerDialog(
							getActivity());
					String urls[] = new String[] { imgUrl };
					imageViewerDialog.setImageUrls(urls);
					imageViewerDialog.show(0);
				}

			}
		});
	}
	
	private void updateShopCartNum(final String ids) {
		MyJsonRequest<String> request = new MyJsonRequest.Builder<String>()
				.apiVer("100").typeKey("BY_ShoppingCart_edit")
				.param("id", ids)
				.param("count", input.getText().toString())
				.requestListener(new XRequestListener<String>() {
					@Override
					public void onResponse(String arg0) {
						Intent intent = new Intent(getContext(),
								QueRenDingDan.class);
						intent.putExtra("from", 0);
						intent.putExtra("shopcarid", ids);
						intent.putExtra("bean", goodsDetailBeans);
						intent.putExtra("id", pid);
						intent.putExtra("count", input.getText()
								.toString());
						startActivity(intent);
						close();
					}

					
				}).errorListener(new XErrorListener() {
					@Override
					public void onErrorResponse(Exception exception,
							int code, String msg) {
						ok.setEnabled(true);
						Toast.makeText(getContext(), "修改失败", 1).show();

					}
				}).build();
		HttpRequest.getDefaultRequestQueue().add(request);
		
	}

	protected String checkGuiGeSelectedState() {

		StringBuilder sb = new StringBuilder();
		for (int i = 0; i < guigeContainer.getChildCount(); i++) {
			View vv = guigeContainer.getChildAt(i);
			if (!(vv instanceof FlowLayout)) {
				continue;
			}
			FlowLayout flowLayout = (FlowLayout) vv;
			int j;
			for (j = 0; j < flowLayout.getChildCount(); j++) {
				TextView textView = (TextView) flowLayout.getChildAt(j);
				if (textView.isSelected()) {
					sb.append(textView.getTag() + ";");
					break;
				}
			}
			if (j == flowLayout.getChildCount()) {
				Toast.makeText(
						getContext(),
						"请选择"
								+ goodsDetailBeans.getSkuName().get(i / 2)
										.getId(), 1).show();
				return null;
			}
		}

		return sb.toString();
	}

	private void addGuiGe() {
		List<SkuBean> list = goodsDetailBeans.getSkuName();
		for (int i = 0; i < list.size(); i++) {
			SkuBean skuBean = list.get(i);
			TextView title = createTitle(skuBean.getId());
			guigeContainer.addView(title);

			FlowLayout flowLayout = createFlowLayout(skuBean.getVid(),
					goodsDetailBeans.getSkuId().get(i).getId(),
					goodsDetailBeans.getSkuId().get(i).getVid());

			guigeContainer.addView(flowLayout);

		}
		container.getViewTreeObserver().addOnGlobalLayoutListener(
				new OnGlobalLayoutListener() {

					@SuppressLint("NewApi")
					@Override
					public void onGlobalLayout() {
						try {
							container.getViewTreeObserver()
									.removeGlobalOnLayoutListener(this);
						} catch (Throwable e) {

						}

						if (container.getHeight() > DensityUtil.screenHeigh() * 0.7) {

							int h = DensityUtil.screenHeigh()
									- DensityUtil.dip2px(280);
							XScrollView scrollView = new XScrollView(
									getContext());
							scrollView.setLayoutParams(new LayoutParams(
									LayoutParams.MATCH_PARENT, h));

							ViewGroup vg = (ViewGroup) guigeContainer
									.getParent();
							vg.removeView(guigeContainer);

							scrollView.addView(guigeContainer);
							vg.addView(scrollView);
						}

					}
				});

	}

	private OnClickListener clickListener = new OnClickListener() {

		@Override
		public void onClick(View v) {

			try {
				kucun.setText(null);
				jiege.setText(null);
				if (v.isSelected()) {
					v.setSelected(false);
					((TextView) v).setTextColor(Color.BLACK);
					imgUrl = goodsDetailBeans.getMainImg();
					XImageLoader.load(goodsDetailBeans.getMainImg(), pic);
					return;
				}
				FlowLayout clickTextViewParent = null;
				StringBuilder stringBuilder = new StringBuilder();

				for (int i = 0; i < guigeContainer.getChildCount(); i++) {
					View view = guigeContainer.getChildAt(i);
					if (!(view instanceof FlowLayout)) {

						continue;
					}

					FlowLayout flowLayout = (FlowLayout) view;
					if (v.getParent() == flowLayout) {
						clickTextViewParent = flowLayout;
						stringBuilder.append(v.getTag());
						stringBuilder.append(";");

					} else {
						for (int j = 0; j < flowLayout.getChildCount(); j++) {
							View textview = flowLayout.getChildAt(j);
							if (textview.isSelected()) {
								stringBuilder.append(textview.getTag());
								stringBuilder.append(";");
								break;
							}
						}
					}

				}

				List<SkuCombinationBean> skuList = goodsDetailBeans
						.getSkuList();
				String selectedSku = stringBuilder.toString();
				for (SkuCombinationBean skuCombinationBean : skuList) {
					String sku = skuCombinationBean.getSkuId();

					if (sku.contains(selectedSku)) {
						for (int j = 0; j < clickTextViewParent.getChildCount(); j++) {
							if (clickTextViewParent.getChildAt(j).isSelected()) {
								clickTextViewParent.getChildAt(j).setSelected(
										false);
								((TextView) clickTextViewParent.getChildAt(j))
										.setTextColor(Color.BLACK);
								break;
							}
						}
						v.setSelected(true);
						((TextView) v).setTextColor(Color.WHITE);
						break;
					}
				}

				String s = isAllFenLeiSelected();

				if (s != null) {
					((View) kucun.getParent()).setVisibility(View.VISIBLE);
					List<SkuCombinationBean> list = goodsDetailBeans
							.getSkuList();
					for (SkuCombinationBean skuCombinationBean : list) {
						if (skuCombinationBean.getSkuId().equals(s)) {
							kucun.setText(skuCombinationBean.getQuantity() + "");
							jiege.setText("￥" + skuCombinationBean.getPrice());
							if (TextUtils.isEmpty(skuCombinationBean
									.getIconUrl())) {
								XImageLoader.load(
										goodsDetailBeans.getMainImg(), pic);
								imgUrl = goodsDetailBeans.getMainImg();
							} else {
								XImageLoader.load(
										skuCombinationBean.getIconUrl(), pic);
								imgUrl = skuCombinationBean.getIconUrl();
							}
							break;
						}
					}
				} else {
					((View) kucun.getParent()).setVisibility(View.INVISIBLE);

				}
			} catch (Exception e) {
				e.printStackTrace();
			}

		}

	};

	private String isAllFenLeiSelected() {
		StringBuilder sb = new StringBuilder();
		for (int i = 0; i < guigeContainer.getChildCount(); i++) {
			View vv = guigeContainer.getChildAt(i);
			if (!(vv instanceof FlowLayout)) {
				continue;
			}
			FlowLayout flowLayout = (FlowLayout) vv;
			int j;
			for (j = 0; j < flowLayout.getChildCount(); j++) {
				TextView textView = (TextView) flowLayout.getChildAt(j);
				if (textView.isSelected()) {
					sb.append(textView.getTag() + ";");
					break;
				}
			}
			if (j == flowLayout.getChildCount()) {
				return null;
			}
		}

		return sb.toString();

	}

	/**
	 * 当前已选中的规格集合
	 * 
	 * @return
	 */
	protected List<String> selectedGuige() {

		List<String> selectedGuige = new ArrayList<String>();
		for (int i = 0; i < guigeContainer.getChildCount(); i++) {
			View vv = guigeContainer.getChildAt(i);
			if (!(vv instanceof FlowLayout)) {
				continue;
			}
			FlowLayout flowLayout = (FlowLayout) vv;
			for (int j = 0; j < flowLayout.getChildCount(); j++) {
				TextView textView = (TextView) flowLayout.getChildAt(j);
				if (textView.isSelected()) {
					selectedGuige.add((String) textView.getTag());
				}

			}

		}
		return selectedGuige;
	}

	private FlowLayout createFlowLayout(List<String> vid, String id,
			List<String> vids) {

		int dis = DensityUtil.dip2px(5);
		FlowLayout flowLayout = new FlowLayout(getContext());
		for (int i = 0; i < vid.size(); i++) {
			TextView textView = new TextView(getContext());
			textView.setTextColor(Color.BLACK);
			textView.setBackgroundResource(R.drawable.selector_guige);

			textView.setText(vid.get(i));

			textView.setTag(id + ":" + vids.get(i));

			textView.setOnClickListener(clickListener);
			ViewGroup.MarginLayoutParams marginLayoutParams = new ViewGroup.MarginLayoutParams(
					ViewGroup.LayoutParams.WRAP_CONTENT,
					ViewGroup.LayoutParams.WRAP_CONTENT);

			marginLayoutParams.setMargins(dis, dis, dis, dis);
			textView.setLayoutParams(marginLayoutParams);
			flowLayout.addView(textView);
		}

		return flowLayout;
	}

	private TextView createTitle(String s) {
		TextView textView = new TextView(getContext());
		textView.setText(s);
		textView.setTextColor(Color.BLACK);

		return textView;
	}

	public void close() {

		View v = getView().findViewById(R.id.container);
		ObjectAnimator animator = ObjectAnimator.ofFloat(v, "translationY", 0,
				v.getHeight()).setDuration(300);

		animator.addListener(new AnimatorListener() {

			@Override
			public void onAnimationStart(Animator arg0) {
			}

			@Override
			public void onAnimationRepeat(Animator arg0) {
			}

			@Override
			public void onAnimationEnd(Animator arg0) {

				dismiss();
			}

			@Override
			public void onAnimationCancel(Animator arg0) {
				dismiss();
			}
		});

		animator.start();
	}

	@Override
	public void onSaveInstanceState(Bundle arg0) {

		super.onSaveInstanceState(arg0);

		arg0.putSerializable("goodsDetailBeans", goodsDetailBeans);
		arg0.putBoolean("isLiJIGouMai", isLiJIGouMai);
	}

}

// 原版本 同一规格必须先取消选择后才能选择新规格

// package com.itboye.sunsun.shop.ui.fragment;
//
// import java.util.ArrayList;
// import java.util.List;
//
// import com.itboye.sunsun.R;
// import com.itboye.sunsun.beans.GoodsDetailBean;
// import com.itboye.sunsun.beans.GoodsDetailBean.SkuBean;
// import com.itboye.sunsun.beans.GoodsDetailBean.SkuCombinationBean;
// import com.itboye.sunsun.buy.ui.QueRenDingDan;
// import com.itboye.sunsun.constants.SPContants;
// import com.itboye.sunsun.custome.FlowLayout;
// import com.itboye.sunsun.custome.XScrollView;
// import com.itboye.sunsun.network.HttpRequest;
// import com.itboye.sunsun.support.BaseDialogFragment;
// import com.itboye.sunsun.utils.DebugToast;
// import com.itboye.sunsun.utils.DensityUtil;
// import com.itboye.sunsun.utils.IntegerParse;
// import com.itboye.sunsun.utils.SPUtils;
// import com.itboye.sunsun.utils.XImageLoader;
// import com.itboye.sunsun.volley.MyJsonRequest;
// import com.itboye.sunsun.volley.XErrorListener;
// import com.itboye.sunsun.volley.XRequestListener;
// import com.nineoldandroids.animation.Animator;
// import com.nineoldandroids.animation.Animator.AnimatorListener;
// import com.nineoldandroids.animation.ObjectAnimator;
//
// import android.animation.AnimatorListenerAdapter;
// import android.annotation.SuppressLint;
// import android.content.Intent;
// import android.graphics.Color;
// import android.os.Bundle;
// import android.view.LayoutInflater;
// import android.view.View;
// import android.view.View.OnClickListener;
// import android.view.ViewGroup;
// import android.view.ViewGroup.LayoutParams;
// import android.view.ViewTreeObserver.OnGlobalLayoutListener;
// import android.widget.EditText;
// import android.widget.ImageView;
// import android.widget.TextView;
// import android.widget.Toast;
//
// public class JiaRuGouWuCheDialog extends BaseDialogFragment implements
// OnClickListener{
//
// View close;
// ImageView pic;
// TextView jiege;
// TextView kucun;
// ViewGroup guigeContainer;
// View ok;
// GoodsDetailBean goodsDetailBeans;
//
// View jian;
// View jia;
// EditText input;
// boolean isLiJIGouMai;
// ViewGroup container;
// public JiaRuGouWuCheDialog( ) {
//
// }
//
// public JiaRuGouWuCheDialog(GoodsDetailBean goodsDetailBeans,boolean
// isLiJIGouMai) {
//
// this.goodsDetailBeans=goodsDetailBeans;
// this.isLiJIGouMai=isLiJIGouMai;
// }
//
//
// @Override
// public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle
// savedInstanceState) {
//
// return
// LayoutInflater.from(getContext()).inflate(R.layout.dialogfragment_jiarugouwuche,
// null);
// }
//
//
// @Override
// public void onActivityCreated(Bundle savedInstanceState) {
//
// super.onActivityCreated(savedInstanceState);
// if (savedInstanceState!=null) {
// goodsDetailBeans=(GoodsDetailBean)
// savedInstanceState.getSerializable("goodsDetailBeans" );
// isLiJIGouMai=savedInstanceState.getBoolean("isLiJIGouMai");
// }
// XImageLoader.load(goodsDetailBeans.getMainImg(), pic);
// jiege.setText("￥"+goodsDetailBeans.getMinPrice());
//
//
// int hasSuk=goodsDetailBeans.getHasSku();
// if (hasSuk==1) {
// addGuiGe();
// }else{
// ((View)kucun.getParent()).setVisibility(View.VISIBLE);
// kucun.setText(goodsDetailBeans.getSkuInfo().getQuantity()+"");
// }
//
// jia.setOnClickListener(new OnClickListener() {
//
// @Override
// public void onClick(View v) {
// String s=input.getText().toString();
// try {
// int c=Integer.parseInt(s);
// input.setText(c+1+"");
// } catch (NumberFormatException e) {
// input.setText("1");
// }
// input.setSelection(input.getText().length());
// }
// });
//
// jian.setOnClickListener(new OnClickListener() {
//
// @Override
// public void onClick(View v) {
// String s=input.getText().toString();
// try {
// int c=Integer.parseInt(s);
// if (c>0) {
// c--;
// }
// input.setText(c+"");
// } catch (NumberFormatException e) {
// input.setText("0");
// }
// input.setSelection(input.getText().length());
// }
// });
//
// ok.setOnClickListener(new OnClickListener() {
//
// @Override
// public void onClick(View v) {
//
// String s=checkGuiGeSelectedState();
// if (s==null) {
// return;
// }
//
// if (IntegerParse.parse(kucun.getText().toString(),
// 0)<IntegerParse.parse(input.getText().toString(), 0)) {
// Toast.makeText(getContext(), "库存不足", 1).show();
// return ;
// }
//
// int hasSuk=goodsDetailBeans.getHasSku();
// String pskuId = "" ;
// if (hasSuk==1) {
// List<SkuCombinationBean>list= goodsDetailBeans.getSkuList();
// for (SkuCombinationBean skuCombinationBean : list) {
// if (skuCombinationBean.getSkuId().equals(s)) {
// pskuId=skuCombinationBean.getId();
// break;
// }
// }
// }else{
// pskuId=goodsDetailBeans.getSkuInfo().getId();
// }
// ok.setEnabled(false);
// String uid=(String) SPUtils.get(getContext(), null, SPContants.USER_ID , "");
// final String pid=pskuId;
// MyJsonRequest<String>request=new MyJsonRequest.Builder<String>()
// .apiVer("100")
// .typeKey("BY_ShoppingCart_add")
// .param("uid", uid)
// .param("p_id", goodsDetailBeans.getId())
// .param("count",input.getText().toString() )
// .param("psku_id", pskuId)
// .requestListener(new XRequestListener<String>() {
// @Override
// public void onResponse(String arg0) {
// ok.setEnabled(true);
// if (isLiJIGouMai) {
// Intent intent=new Intent(getContext(), QueRenDingDan.class);
// intent.putExtra("from", 0);
// intent.putExtra("shopcarid", arg0);
// intent.putExtra("bean", goodsDetailBeans);
// intent.putExtra("id", pid);
// intent.putExtra("count", input.getText().toString());
// startActivity(intent);
// }else{
//
// }
// close();
// }
// })
// .errorListener(new XErrorListener() {
// @Override
// public void onErrorResponse(Exception exception, int code, String msg) {
// ok.setEnabled(true);
// Toast.makeText(getContext(), "添加失败", 1).show();
//
// }
// })
// .build();
// HttpRequest.getDefaultRequestQueue().add(request);
//
// }
// });
// }
//
// protected String checkGuiGeSelectedState() {
//
// StringBuilder sb=new StringBuilder();
// for (int i = 0; i < guigeContainer.getChildCount(); i++) {
// View vv=guigeContainer.getChildAt(i);
// if (! (vv instanceof FlowLayout)) {
// continue;
// }
// FlowLayout flowLayout=(FlowLayout) vv;
// int j;
// for ( j = 0; j < flowLayout.getChildCount(); j++) {
// TextView textView=(TextView) flowLayout.getChildAt(j);
// if (textView.isSelected()) {
// sb.append(textView.getTag()+";");
// break;
// }
// }
// if (j==flowLayout.getChildCount()) {
// Toast.makeText(getContext(),
// "请选择"+goodsDetailBeans.getSkuName().get(i/2).getId(), 1).show();
// return null;
// }
// }
//
// return sb.toString();
// }
//
//
// private void addGuiGe(){
// List<SkuBean>list=goodsDetailBeans.getSkuName();
// for (int i = 0; i < list.size(); i++) {
// SkuBean skuBean=list.get(i);
// TextView title=createTitle(skuBean.getId());
// guigeContainer.addView(title);
//
// FlowLayout
// flowLayout=createFlowLayout(skuBean.getVid(),goodsDetailBeans.getSkuId().get(i).getId(),goodsDetailBeans.getSkuId().get(i).getVid());
//
// guigeContainer.addView(flowLayout);
//
// }
// container.getViewTreeObserver().addOnGlobalLayoutListener(new
// OnGlobalLayoutListener() {
//
// @SuppressLint("NewApi")
// @Override
// public void onGlobalLayout() {
// try {
// container.getViewTreeObserver().removeGlobalOnLayoutListener(this);
// } catch (Throwable e) {
//
// }
//
// if (container.getHeight()>DensityUtil.screenHeigh()*0.7) {
//
// int h=DensityUtil.screenHeigh()-DensityUtil.dip2px(280);
// XScrollView scrollView=new XScrollView(getContext());
// scrollView.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, h));
//
// ViewGroup vg=(ViewGroup) guigeContainer.getParent();
// vg.removeView(guigeContainer);
//
// scrollView.addView(guigeContainer);
// vg.addView(scrollView);
// }
//
// }
// });
//
//
//
//
// }
// private OnClickListener clickListener=new OnClickListener() {
//
// @Override
// public void onClick(View v) {
//
// if (!v.isSelected()) {
// v.setSelected(true);
// ((TextView)v).setTextColor(Color.WHITE);
// }else{
// v.setSelected(false);
// ((TextView)v).setTextColor(Color.BLACK);
// }
// updateGuiGeTextView();
//
// String s=isAllFenLeiSelected();
// jiege.setText(null);
// if (s!=null) {
// ((View)kucun.getParent()).setVisibility(View.VISIBLE);
// List<SkuCombinationBean>list= goodsDetailBeans.getSkuList();
// for (SkuCombinationBean skuCombinationBean : list) {
// if (skuCombinationBean.getSkuId().equals(s)) {
// kucun.setText(skuCombinationBean.getQuantity()+"");
// jiege.setText("￥"+skuCombinationBean.getPrice());
// XImageLoader.load(skuCombinationBean.getIconUrl(), pic);
// break;
// }
// }
// }else{
// ((View)kucun.getParent()).setVisibility(View.INVISIBLE);
//
// }
//
// }
//
//
//
// };
//
// private String isAllFenLeiSelected(){
// StringBuilder sb=new StringBuilder();
// for (int i = 0; i < guigeContainer.getChildCount(); i++) {
// View vv=guigeContainer.getChildAt(i);
// if (! (vv instanceof FlowLayout)) {
// continue;
// }
// FlowLayout flowLayout=(FlowLayout) vv;
// int j;
// for ( j = 0; j < flowLayout.getChildCount(); j++) {
// TextView textView=(TextView) flowLayout.getChildAt(j);
// if (textView.isSelected()) {
// sb.append(textView.getTag()+";");
// break;
// }
// }
// if (j==flowLayout.getChildCount()) {
// return null;
// }
// }
//
// return sb.toString();
//
// }
// private void updateGuiGeTextView() {
// List<String>selected=selectedGuige();
//
//
// for (int i = 0; i < guigeContainer.getChildCount(); i++) {
// View vv=guigeContainer.getChildAt(i);
// if (! (vv instanceof FlowLayout)) {
// continue;
// }
// FlowLayout flowLayout=(FlowLayout) vv;
//
// for (int j = 0; j < flowLayout.getChildCount(); j++) {
// TextView textView=(TextView) flowLayout.getChildAt(j);
// String tag=(String) textView.getTag();
// if (isExisted(tag, selected)) {
// textView.setEnabled(true);
// }else{
// textView.setEnabled(false);
// }
// }
// }
// }
//
// /**
// * //遍历每一个规格textview，判断该tetview和已经选中的selected列表的组合是否存在于skuList中
// * @param sku
// * @param tag
// * @param selected
// * @return
// */
// private boolean isExisted( String tag, List<String> selected) {
//
// List<SkuCombinationBean>skuList=goodsDetailBeans.getSkuList();
// for (SkuCombinationBean skuCombinationBean : skuList) {
// String sku=skuCombinationBean.getSkuId();
//
// if (!sku.contains(tag)) {
// continue;
// }
//
// boolean flag=isItemAllInSKU(sku,selected);
// if (flag) {
// return true;
// }
//
// }
//
//
// return false;
// }
// private boolean isItemAllInSKU(String sku, List<String> selected) {
//
// for (String string : selected) {
// if (!sku.contains(string)) {
// return false;
// }
// }
// return true;
// }
//
//
// /**
// * 当前已选中的规格集合
// * @return
// */
// protected List<String> selectedGuige() {
//
// List<String>selectedGuige=new ArrayList<String>();
// for (int i = 0; i < guigeContainer.getChildCount(); i++) {
// View vv=guigeContainer.getChildAt(i);
// if (! (vv instanceof FlowLayout)) {
// continue;
// }
// FlowLayout flowLayout=(FlowLayout) vv;
// for (int j = 0; j < flowLayout.getChildCount(); j++) {
// TextView textView=(TextView) flowLayout.getChildAt(j);
// if (textView.isSelected()) {
// selectedGuige.add((String)textView.getTag());
// }
//
// }
//
//
// }
// return selectedGuige;
// }
//
// private FlowLayout createFlowLayout(List<String> vid, String id, List<String>
// vids) {
//
// int dis=DensityUtil.dip2px(10);
// FlowLayout flowLayout=new FlowLayout(getContext());
// for (int i = 0; i < vid.size(); i++) {
// TextView textView=new TextView(getContext());
// textView.setTextColor(Color.BLACK);
// textView.setBackgroundResource(R.drawable.selector_guige);
//
// textView.setText(vid.get(i));
//
// textView.setTag(id+":"+vids.get(i));
//
// textView.setOnClickListener(clickListener);
// ViewGroup.MarginLayoutParams marginLayoutParams=new
// ViewGroup.MarginLayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT,
// ViewGroup.LayoutParams.WRAP_CONTENT);
//
// marginLayoutParams.setMargins(dis, dis, dis, dis);
// textView.setLayoutParams(marginLayoutParams);
// flowLayout.addView(textView);
// }
//
//
//
// return flowLayout;
// }
//
//
//
//
//
// private TextView createTitle(String s){
// TextView textView=new TextView(getContext());
// textView.setText(s);
// textView.setTextColor(Color.BLACK);
//
// return textView;
// }
// @Override
// public void onClick(View v) {
//
// switch (v.getId()) {
// case R.id.close:
// close();
// break;
//
// default:
// break;
// }
// }
//
//
//
// public void close() {
//
// View v=getView().findViewById(R.id.container);
// ObjectAnimator animator=ObjectAnimator.ofFloat(v, "translationY",0,
// v.getHeight()).setDuration(300);
//
// animator.addListener(new AnimatorListener() {
//
// @Override
// public void onAnimationStart(Animator arg0) { }
//
// @Override
// public void onAnimationRepeat(Animator arg0) { }
//
// @Override
// public void onAnimationEnd(Animator arg0) {
//
// dismiss();
// }
//
// @Override
// public void onAnimationCancel(Animator arg0) {
// dismiss();
// }
// });
//
// animator.start();
// }
//
// @Override
// public void onSaveInstanceState(Bundle arg0) {
//
// super.onSaveInstanceState(arg0);
//
// arg0.putSerializable("goodsDetailBeans", goodsDetailBeans);
// arg0.putBoolean("isLiJIGouMai", isLiJIGouMai);
// }
//
//
//
// }
